#ifndef NIGHT_LAMBDA
#define NIGHT_LAMBDA

#include "core.hpp"
#include "bind.hpp"
#include "operator.hpp"

namespace night { namespace lambda {

using night::lambda::detail::arg;
using night::lambda::detail::var;
using night::lambda::detail::fun;
using night::lambda::detail::ref;
using night::lambda::detail::bind;

namespace {
arg<1> const x = arg<1> ();
arg<2> const y = arg<2> ();
arg<3> const z = arg<3> ();

arg<1> const _1 = arg<1> ();
arg<2> const _2 = arg<2> ();
arg<3> const _3 = arg<3> ();
}

} } // end namespace night

#endif // NIGHT_LAMBDA
